Kerangka WebSocket WebSocket

Selepas persetujuan selesai, hubungan dwi-arah pun terbina. Dari sini, pelayan dan pelanggan masing-masing berkomunikasi antara satu sama lain menggunakan kerangka WebSocket samada kerangka teks atau perduaan. Format kerangka WebSocket adalah seperti berikut:[1]

MedanSaiz (bit)Maksud
Fin1Menandakan samada pesanan ialah pesanan terakhir atau bukan.
Bit-bit simpanan3Bit-bit yang tidak dunakan dan disimpan untuk masa hadapan. Sentiasa 0 melainkan jika digunakan oleh mana-mana sambungan (extension).
Opkod4Memberi panduan kepada penerima pesanan tentang muatan data yang dibawa oleh kerangka.
NilaiMaksud
0x0Kerangka lanjutan.
0x1Kerangka teks.
0x2Kerangka perduaan.
0x3-7Disimpan untuk kegunaan lanjut bagi kerangka bukan kawalan.
0x8Menandakan tutup sambungan.
0x9Menandakan pong.
0xAMenandakan ping.
0xB-0xFDisimpan untuk kegunaan lanjut bagi kerangka kawalan.
Bertopeng1Penanda samada muatan ditopengkan atau tidak. Biasanya sentiasa 1 bagi pesanan yang datang daripada pelanggan.
Panjang muatan7Panjang muatan (dalam bait) oleh pesanan jika panjang kurang daripada 125 bait.
7+16Jika nilai 7 bit pertama ialah 126, maka panjang muatan disimpan dalam 16 bit seterusnya.
7+64Jika nilai 7 bit pertama ialah 127, maka panjang muatan disimpan dalam 64 bit seterusnya.
Kunci penopeng32Setiap bait ialah kunci yang digunakan untuk menopengkan muatan.
Data muatanx + yData yang dibawa oleh pesanan.
Data sambunganxSentiasa 0 melainkan penggunaan sambungan (extension) telah dipersetujui.
Data aplikasiyBait-bait lebihan dalam kerangka ialah data aplikasi.

Algoritma penopengan adalah seperti berikut:

 muatan_bertopeng = "" bagi indeks dari 0 hingga panjang_muatan     muatan_bertopeng += muatan[indeks] ^ topeng[indeks mod 4]